Emmanuele Bassi [Mon, 12 Mar 2018 10:03:54 +0000 (10:03 +0000)]
Initialise variables
The dx and dy variables may be left uninitialized by the coordinate
translation — or so the C compiler thinks. Let's avoid a warning when
building.
Emmanuele Bassi [Mon, 12 Mar 2018 10:02:24 +0000 (10:02 +0000)]
Use the same arguments for print backends
All the print backend shared modules should use the same C preprocessor
symbols.
Emmanuele Bassi [Mon, 12 Mar 2018 09:54:56 +0000 (09:54 +0000)]
ci: Add gstreamer to the Docker image
We're going to need it for the media interface.
Emmanuele Bassi [Thu, 1 Mar 2018 10:23:14 +0000 (17:23 +0700)]
ci: Use the right path for the logs
The meson-logs directory is under the `_build` directory.
Matthias Clasen [Tue, 13 Mar 2018 02:09:26 +0000 (02:09 +0000)]
Merge branch 'query-wayland-registry' into 'master'
gtkimmodule: make match_backend() query
See merge request GNOME/gtk!56
Daniel Boles [Tue, 13 Mar 2018 00:19:51 +0000 (00:19 +0000)]
FileChooserWidget: Fix leaks in .get_subtitle()
Now that subtitle's default value "Searching" for OPERATION_MODE_SEARCH
is duplicated as it should be, we cannot reassign other strings to it
anymore, as that resulted in the original dupe of "Searching" leaking.
Fix this by only assigning the dup'd "Searching" after trying to get
more specific values, not before. We therefore need to set it to NULL
during its declaration, and that means we needn't in the final else.
Daniel Boles [Mon, 12 Mar 2018 22:44:37 +0000 (22:44 +0000)]
FileChooserWidget: Avoid crash freeing static str
Having a FileChooserDialog in location-entry mode then pressing
<primary>f to move to search mode would crash with an invalid free().
In that case, FileChooserWidget.get_subtitle() returned a static string
straight from gettext. This crashed when the GBinding from :subtitle to
FileChooserDialog’s HeaderBar:subtitle shortly tried to free the string.
Fix by duplicating the string before returning it, like all other paths.
https://bugzilla.gnome.org/show_bug.cgi?id=791004
Peter Bloomfield [Mon, 12 Mar 2018 21:46:57 +0000 (17:46 -0400)]
gtkimmodule: make match_backend() query
…the wayland registry.
Wnen _gtk_im_module_get_default_context_id calls
match_backend (context_id) and the default GdkDisplay
is wayland, match_backend() should return TRUE only if
gdk_wayland_display_query_registry (display, "gtk_text_input_manager")
returns TRUE.
Stas Solovey [Mon, 12 Mar 2018 21:08:05 +0000 (21:08 +0000)]
Update Russian translation
(cherry picked from commit
0e016686838982253b1dc161f4d9df48ce091abd)
Aurimas Černius [Mon, 12 Mar 2018 21:00:48 +0000 (23:00 +0200)]
Updated Lithuanian translation
Daniel Boles [Mon, 12 Mar 2018 18:57:06 +0000 (18:57 +0000)]
testinfobar: Test more properties, response signal
Also test :message-type, :show-close-button, and ::response.
Marek Černocký [Mon, 12 Mar 2018 19:08:48 +0000 (20:08 +0100)]
Updated Czech translation
Mart Raudsepp [Mon, 12 Mar 2018 16:27:50 +0000 (16:27 +0000)]
Update Estonian translation
(cherry picked from commit
e4e2b7687d455566b2102404487fcaa6b1b0077a)
Benjamin Otte [Mon, 12 Mar 2018 16:17:30 +0000 (17:17 +0100)]
texture: Change download vfunc
A problem with textures is that they can become too big for GPU memory,
which would require tiling. But for tiling we only need to download
the pixels needed by the tile.
Similarly, there might be interest to not upload full textures if a
renderer knows it only needs a small part.
Both of these methods require the ability to specify an area of the
texture to be downloaded. So change the download vfunc to include
this parameter now before we add even more textures later.
A private gdk_texture_download_area() function has also been added, but
nobody is using it yet.
Benjamin Otte [Mon, 12 Mar 2018 04:12:54 +0000 (05:12 +0100)]
texture: Export gdk_memory_texture_new() and GdkMemoryFormat
Also add tests for all these newfangled formats.
Daniel Boles [Mon, 12 Mar 2018 16:17:11 +0000 (16:17 +0000)]
Merge branch 'wip/dboles/frame-yalign-byealign' into 'master'
Frame: Erase the now-useless property label-yalign
See merge request GNOME/gtk!40
Daniel Boles [Mon, 12 Mar 2018 16:08:29 +0000 (16:08 +0000)]
ListBox: Avoid ::row-activated/Row::activate ambig
…uity, by adding a doc comment to Row::activate explaining what it does
and why it is probably not what the user reading that is looking for.
https://bugzilla.gnome.org/show_bug.cgi?id=794008
Piotr Drąg [Mon, 12 Mar 2018 15:48:31 +0000 (16:48 +0100)]
Update Polish translation
Daniel Boles [Mon, 12 Mar 2018 15:29:21 +0000 (15:29 +0000)]
testinfobar: Add simple test of :visible/:revealed
This exists merely to prove that, having added :revealed, show() and
hide() now work reliably, as does set_revealed() for the animated case.
https://bugzilla.gnome.org/show_bug.cgi?id=710888
Daniel Boles [Thu, 1 Mar 2018 19:53:53 +0000 (19:53 +0000)]
Frame: Erase the now-useless property label-yalign
The border is now drawn on the frame node, not using an internal border
node, so we are no longer able to align the label to vertically overlap
the border. The property no longer performs its original purpose, & nor
is it a useful candidate for giving a new role, so no point keeping it.
https://bugzilla.gnome.org/show_bug.cgi?id=778886
Balázs Meskó [Mon, 12 Mar 2018 06:21:39 +0000 (06:21 +0000)]
Update Hungarian translation
Piotr Drąg [Sun, 11 Mar 2018 18:28:03 +0000 (19:28 +0100)]
Update POTFILES.in
Matthias Clasen [Sun, 11 Mar 2018 16:47:43 +0000 (16:47 +0000)]
Merge branch 'module-reorg' into 'master'
Consolidate print backends into one directory
See merge request GNOME/gtk!53
Matthias Clasen [Sun, 11 Mar 2018 16:18:16 +0000 (12:18 -0400)]
Consolidate print backends into one directory
This will let us use GTK_PATH to load them uninstalled, which
is useful for in-tree tests.
Matthias Clasen [Sun, 11 Mar 2018 12:14:14 +0000 (08:14 -0400)]
Exit cleanly if no display is found
We should not try to create an inspector window and generate
tons of ugly warnings in this case.
Marek Černocký [Sun, 11 Mar 2018 08:43:01 +0000 (09:43 +0100)]
Updated Czech translation
Marek Černocký [Sun, 11 Mar 2018 07:14:09 +0000 (08:14 +0100)]
Updated Czech translation
Marek Černocký [Sun, 11 Mar 2018 07:12:31 +0000 (08:12 +0100)]
Fixed typo in script name Kjohki -> Khojki
Matthias Clasen [Sun, 11 Mar 2018 05:39:00 +0000 (05:39 +0000)]
Merge branch 'wip/matthiasc/snapshot' into 'master'
Implement builder pattern for GtkSnapshot
See merge request GNOME/gtk!52
Matthias Clasen [Sun, 11 Mar 2018 05:29:46 +0000 (00:29 -0500)]
Use GtkSnapshot getters
We can avoid direct struct access and gtksnapshotprivate.h
everywhere.
Matthias Clasen [Sun, 11 Mar 2018 05:17:53 +0000 (00:17 -0500)]
GtkSnapshot: Add getters
These getters can be useful when creating new snapshots
in a snapshot() vfunc.
Matthias Clasen [Sun, 11 Mar 2018 02:29:46 +0000 (21:29 -0500)]
Document new snapshot api
Matthias Clasen [Sun, 11 Mar 2018 02:20:25 +0000 (21:20 -0500)]
GtkSnapshot: Drop init/finish
We are ont using stack-allocated snapshots anymore.
Matthias Clasen [Sun, 11 Mar 2018 02:14:09 +0000 (21:14 -0500)]
Stop using stack-allocated snapshots
Use the new/free api instead of init/finish
for GtkSnapshot.
Matthias Clasen [Sun, 11 Mar 2018 01:52:06 +0000 (20:52 -0500)]
GtkSnapshot: Implement the builder pattern
Make GtkSnapshot a refcounted boxed type, and add
public API that follows the builder pattern described
here: https://blogs.gnome.org/otte/2018/02/03/builders/
Timm Bäder [Fri, 9 Mar 2018 10:57:23 +0000 (11:57 +0100)]
GdkCursor: Add some missing (nullable) annotations
Timm Bäder [Wed, 7 Mar 2018 19:57:21 +0000 (20:57 +0100)]
spinbutton: Remove priv pointer
Matthias Clasen [Fri, 9 Mar 2018 07:13:13 +0000 (02:13 -0500)]
Avoid warnings
When generating introspection data, we instantiate types without
calling gtk_init, so make sure that extension points are registered
before the type is trying to implement them.
Pavel Roskin [Thu, 8 Mar 2018 14:58:42 +0000 (15:58 +0100)]
x11: Avoid a division by zero
This is similar to
f44baf51d9e8616a but for RandR 1.3 servers like
x11rdp and Windows Exceed which don't return a refresh rate. Avoid a
crash when that happens.
https://bugzilla.gnome.org/show_bug.cgi?id=775546
Timm Bäder [Wed, 7 Mar 2018 19:37:00 +0000 (20:37 +0100)]
separator: Remove priv pointer
Timm Bäder [Wed, 7 Mar 2018 19:26:51 +0000 (20:26 +0100)]
menubutton: Remove priv pointer
Timm Bäder [Wed, 7 Mar 2018 14:14:37 +0000 (15:14 +0100)]
widget: Add a translate_coordinates version for doubles
So we can use that one when translating event coordinates. Also adapt
the widgetfocus demo to ensure this works.
We should probably at some point delete either the int or the double
version.
Timm Bäder [Wed, 7 Mar 2018 13:02:19 +0000 (14:02 +0100)]
linkbutton: Remove priv pointer
Timm Bäder [Tue, 6 Mar 2018 20:25:01 +0000 (21:25 +0100)]
expander: Remove label-fill property
It's just setting some internal boolean and nothing else. It's like this
in gtk3 as well so it can't be too important either.
Timm Bäder [Wed, 7 Mar 2018 19:09:30 +0000 (19:09 +0000)]
Merge branch 'expander-add-like-bin' into 'master'
expander: Check for an existing child when adding
See merge request GNOME/gtk!48
Benjamin Otte [Wed, 7 Mar 2018 15:04:04 +0000 (16:04 +0100)]
overlay: Add GtkOverlay::measure child property
It determines whether a child is included in the overlay's size
measurement.
The first user is (gonna be) GtkVideo.
Benjamin Otte [Wed, 7 Mar 2018 01:02:28 +0000 (02:02 +0100)]
eventcontroller: Remove unused evmask member variable
Benjamin Otte [Wed, 7 Mar 2018 00:56:32 +0000 (01:56 +0100)]
eventcontroller: Get rid of constructed vfunc
Instead, add the controller to the widget in set_property.
Benjamin Otte [Tue, 6 Mar 2018 02:41:13 +0000 (03:41 +0100)]
texture: Add GdkMemoryTexture
GdkMemoryTexture is a texture implementation for holding data in memory
(read: GBytes). You specify the GdkMemoryFormat that data is in and off
you go.
Renderers can use this to add uploads in various different formats and
don't need to fallback to GDK doing the conersion on the CPU.
Supported formats can be extended if we need new ones, for now I just
added the relevant ones for Cairo and GdkPixbuf.
The constructor is also private still, because I'm not sure we want to
export GdkMemoryFormat.
Wrappers that do from_cairo_surface() and for_pixbuf() do exist though.
Benjamin Otte [Mon, 5 Mar 2018 13:38:38 +0000 (14:38 +0100)]
gdk: Split out GL texture
Put GdkGLTexture into its own file and rename the API to
gdk_gl_texture_foo() instead of gdk_texture_foo_for_gl().
Apart from naming, no actual code changes.
Carlos Garnacho [Mon, 5 Mar 2018 17:51:00 +0000 (18:51 +0100)]
imwayland: Fix parent type
It was inadvertently changed in commit
15cc20e7b.
https://gitlab.gnome.org/GNOME/gtk/issues/58
Closes: #58
Matthias Clasen [Wed, 7 Mar 2018 00:10:48 +0000 (19:10 -0500)]
Use gio-querymodules
GIO has this facility, so we should use it.
At the same time, make sure the immodules directory
exists, even if we don't install any modules there
outselves.
Matthias Clasen [Tue, 6 Mar 2018 23:57:16 +0000 (18:57 -0500)]
Make debug messages work earlier
We need to be able to produce debug output during module
loading. This change ensures that we can.
Alexandre Franke [Tue, 6 Mar 2018 21:01:36 +0000 (21:01 +0000)]
Update French translation
Peter Bloomfield [Tue, 6 Mar 2018 19:26:08 +0000 (14:26 -0500)]
expander: Check for an existing child when adding
Now that GtkExpander subclasses GtkContainer instead of GtkBin, it needs
its own guard against adding more than one child.
Also, the documentation should no longer describe adding a child as if
it is descended from GtkBin.
Timm Bäder [Tue, 6 Mar 2018 19:04:30 +0000 (20:04 +0100)]
entry: Fix invisible cursors
Timm Bäder [Tue, 6 Mar 2018 18:59:29 +0000 (19:59 +0100)]
GdkSelectionInputStreamX11: Plug a memory leak
Timm Bäder [Tue, 6 Mar 2018 18:47:18 +0000 (19:47 +0100)]
GdkSelectionOutputStreamX11: Plug a memory leak
Timm Bäder [Tue, 6 Mar 2018 16:36:04 +0000 (17:36 +0100)]
expander: fix sizes in resize_toplevel
We can't use gtk_widget_get_allocation for either non-anchored widgets
(which happens with the child widget when the expander is unexpanded)
nor toplevel windows since that will include the window decorations.
Fixes #70 in gtk4
Timm Bäder [Tue, 6 Mar 2018 13:37:28 +0000 (14:37 +0100)]
viewport: Remove priv pointer
Timm Bäder [Mon, 5 Mar 2018 16:22:20 +0000 (17:22 +0100)]
expander: Attach the gesture to the title widget
Instead of tracking whether the click happened inside the title widget
ourselves, just attach the gesture to the title widget.
Rūdolfs Mazurs [Sun, 4 Mar 2018 19:24:16 +0000 (19:24 +0000)]
Update Latvian translation
Rūdolfs Mazurs [Sun, 4 Mar 2018 19:18:11 +0000 (19:18 +0000)]
Update Latvian translation
Timm Bäder [Sun, 4 Mar 2018 19:04:43 +0000 (20:04 +0100)]
overlay: Make forall() remove-safe
Since this is a GtkContainer, forall will be used to destroy all the
widgets.
Timm Bäder [Sun, 4 Mar 2018 19:04:17 +0000 (20:04 +0100)]
overlay: Fix GSlide/g_free mixup
We free the allocated data later using g_free, so don't use GSlice when
allocating it.
Timm Bäder [Sun, 4 Mar 2018 19:03:54 +0000 (20:03 +0100)]
overlay: Fix remove implementation
Use the child widget list of the overlay, not the passed child.
Timm Bäder [Sun, 4 Mar 2018 18:55:54 +0000 (19:55 +0100)]
imcontextxim: Move initialisation into _init function
We are creating these using g_object_new, so the _new function is never
called, resulting in a NULL mb_charset. Fix this by moving the
initialisation into the _init function.
Benjamin Otte [Sun, 4 Mar 2018 18:29:45 +0000 (18:29 +0000)]
Merge branch 'set-client-widget-nullable' into 'master'
gtkimcontextxim: fix gtk_im_context_xim_set_client_widget not handling widget=NULL
See merge request GNOME/gtk!46
Timm Bäder [Sun, 4 Mar 2018 16:48:36 +0000 (17:48 +0100)]
gskpango: Don't create text nodes for clipped text
Measure the text here directly and check if the created node bounds will
be clipped away before even creating the text node.
Timm Bäder [Sun, 4 Mar 2018 16:35:17 +0000 (17:35 +0100)]
rendernodes: Add gsk_text_node_new_with_bounds
An alternative GskTextNode constructor that does no text measuring. That
way, we can measure the text before and check if the node will be
outside of the current clip anyway.
Timm Bäder [Sun, 4 Mar 2018 16:25:49 +0000 (17:25 +0100)]
rendernodes: Add missing nullable annotation
Timm Bäder [Sun, 4 Mar 2018 16:15:39 +0000 (17:15 +0100)]
gl renderer: Limit texture node size to clip
Timm Bäder [Sat, 3 Mar 2018 11:28:05 +0000 (12:28 +0100)]
overlay: Remove child list
Timm Bäder [Sat, 3 Mar 2018 10:28:57 +0000 (11:28 +0100)]
overlay: Remove priv pointer
Timm Bäder [Fri, 2 Mar 2018 16:22:46 +0000 (17:22 +0100)]
glglyphcache: Pass lookup key to g_hash_table_lookup directly
Timm Bäder [Thu, 1 Mar 2018 20:47:36 +0000 (21:47 +0100)]
overlay: Fix coordinates in child_update_style_classes
Both main child and all others are in the same coordinate space, so no
need to add the parent position here.
Timm Bäder [Thu, 1 Mar 2018 20:36:15 +0000 (21:36 +0100)]
overlay: Don't chain up in size_allocate
The GtkBin size_allocate implementation will allocate a size to the main
child, which GtkOverlay already does.
Timm Bäder [Thu, 1 Mar 2018 17:42:59 +0000 (18:42 +0100)]
entry: Remove priv pointer
Timm Bäder [Thu, 1 Mar 2018 09:35:44 +0000 (10:35 +0100)]
container: Remove unused struct member
Timm Bäder [Wed, 28 Feb 2018 15:03:35 +0000 (16:03 +0100)]
testsuite: Remove GL text test case
This was just testing that text nodes do alpha correctly, but the test
even breaks if the default font is different from the one that was used
to create the reference image, so drop it for now.
Timm Bäder [Wed, 28 Feb 2018 14:27:48 +0000 (15:27 +0100)]
label: Simplify ensure_layout()
use an early return for an already existing layout.
Christoph Reiter [Sun, 4 Mar 2018 17:40:12 +0000 (18:40 +0100)]
gtkimcontextxim: fix gtk_im_context_xim_set_client_widget not handling widget=NULL
gtk_im_context_set_client_widget() allows passing NULL as widget to signal that
the widget no longer exists. The xim implementation didn't handle that
case which led to the test suite on gitlab-ci failing.
Christoph Reiter [Sun, 4 Mar 2018 10:10:20 +0000 (10:10 +0000)]
Merge branch 'gi-a11y' into 'master'
Include gtk/gtk-a11y.h in introspection file.
See merge request GNOME/gtk!43
Christoph Reiter [Sun, 4 Mar 2018 09:43:34 +0000 (09:43 +0000)]
Merge branch 'include-gtkstackaccessible' into 'master'
a11y: Include gtkstackaccessible.h in gtk-a11y.h
See merge request GNOME/gtk!41
Tomasz Miąsko [Sat, 3 Mar 2018 00:00:00 +0000 (00:00 +0000)]
Include gtk/gtk-a11y.h in introspection file.
The gir XML file contains description of types and functions from
gtk/gtk-a11y.h. Indicate that this header should be included in addition
to gtk/gtk.h in applications written in C. #56
Tomasz Miąsko [Sat, 3 Mar 2018 00:00:00 +0000 (00:00 +0000)]
a11y: Include gtkstackaccessible.h in gtk-a11y.h
Bruce Cowan [Fri, 2 Mar 2018 22:09:11 +0000 (22:09 +0000)]
Update British English translation
(cherry picked from commit
3059df0d4deb28875e3bd7c56c06f5c067264505)
Piotr Drąg [Fri, 2 Mar 2018 20:27:43 +0000 (21:27 +0100)]
Update POTFILES.skip
Piotr Drąg [Fri, 2 Mar 2018 20:26:21 +0000 (21:26 +0100)]
Update POTFILES.skip
Benjamin Otte [Sun, 25 Feb 2018 19:39:09 +0000 (20:39 +0100)]
gtk: Remove unused header files in gtk/ui/
Benjamin Otte [Mon, 26 Feb 2018 13:01:29 +0000 (14:01 +0100)]
entry: Remove cursor adjustment APIs
Benjamin Otte [Thu, 1 Mar 2018 00:08:05 +0000 (01:08 +0100)]
css: Parse hex colors with alpha value
The CSS color spec version 4 introduces this, support has hit Safari,
Chrome and Firefox, so this looks like a feature that's here to stay.
https://drafts.csswg.org/css-color/#hex-notation
Piotr Drąg [Thu, 1 Mar 2018 17:38:05 +0000 (18:38 +0100)]
Update POTFILES.in
Christoph Reiter [Thu, 1 Mar 2018 13:46:26 +0000 (13:46 +0000)]
Merge branch 'quartz-missing-config-include-gtk4' into 'master'
macos: Fix missing gdk symbol exports for gtk dnd
See merge request GNOME/gtk!39
Christoph Reiter [Thu, 1 Mar 2018 13:31:57 +0000 (14:31 +0100)]
macos: export gdk_quartz_drag_source_context()
It's used in the gtk dnd code but not exported in gdk.
Append a "_libgtk_only" suffix as with other internal exports and
export the symbol.
See #32
Emmanuele Bassi [Thu, 1 Mar 2018 10:09:22 +0000 (17:09 +0700)]
ci: Store the logs on build failure
We should save the logs directory when the CI pipeline fails, so that we
have a chance at debugging the failure.
Emmanuele Bassi [Thu, 1 Mar 2018 10:08:27 +0000 (17:08 +0700)]
ci: Update the configuration options
The options were renamed in commit
7b32900c5574.
Emmanuele Bassi [Thu, 1 Mar 2018 09:44:02 +0000 (16:44 +0700)]
xim: Use NULL-safe string comparison
The locale string may be NULL.
Matthias Clasen [Thu, 1 Mar 2018 06:38:39 +0000 (06:38 +0000)]
Merge branch 'wip/matthiasc/immodule-cleanup' into 'master'
Convert immodules to use an extension point
See merge request GNOME/gtk!34
Timm Bäder [Tue, 27 Feb 2018 14:13:14 +0000 (15:13 +0100)]
entry: Simplify cursor management
Since cursors are per-widget now and the icons are widgets, we can just
set the cursors once.